﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Security.Cryptography;
using System.IO;


namespace Presentacion.controlasistencia
{
    public partial class Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

            txtPassword.Attributes.Add("placeholder", "Contraseña");
            txtUser.Attributes.Add("placeholder", "Usuario");
        }

        protected void btnIngresar_Click(object sender, EventArgs e)
        {

        }

        public void btnHiden_Click(object sender, EventArgs e)
        {
            Response.Cookies["tiempo"].Value = DateTime.Now.ToString();
            var msm = "Usuario o contraseña incorrectos..!!";
            var user = this.txtUser.Text.Trim();
            var pass = this.txtPassword.Text.Trim();
            if (user == "" || pass == "")
            {
                System.Web.HttpContext.Current.Response.Write("<SCRIPT LANGUAGE='JavaScript'>alert('" + msm + "')</SCRIPT>");
            }
            else
            {
                #region codigo con try Catch
                try
                {
                    servicioDocente.DocenteServicioSoapClient _objServicioDocente = new servicioDocente.DocenteServicioSoapClient();
                    servicioCarrera.CarreraServiceSoapClient _objServicioCarrera = new servicioCarrera.CarreraServiceSoapClient();
                    Negocio.catalogos.catalogoUsuario _objU = new Negocio.catalogos.catalogoUsuario();
                    Negocio.catalogos.catalogoCarrera _objCa = new Negocio.catalogos.catalogoCarrera();
                    var nombre = _objServicioDocente.Login_Docente(user, pass).FirstOrDefault();
                    var result = _objServicioDocente.Login_Docente(user, pass);
                    var nombreDirector = _objServicioDocente.Login_Director(user, pass).FirstOrDefault();
                    var resultDirector = _objServicioDocente.Login_Director(user, pass);
                    var coordinador = _objU.consultarUsuariosXDocumento(user);
                    HttpCookie galleta = new HttpCookie("datosgalleta", DateTime.Now.ToString());
                    if (nombre!=null)
                    {
                        var carreraCoordinador = _objCa.obtenerCarrera(nombre.Id_Docente).FirstOrDefault();
                        if (result.Count() > 0)
                        {
                            
                            Response.AppendCookie(galleta);
                            _objServicioDocente.ObtenerDocentesCedula(nombre.Cedula).FirstOrDefault();
                            Session.Add("idDocente", nombre.Id_Docente);
                            Session.Add("nombresDocente", nombre.Nombres);
                            Session.Add("apellido", nombre.Apellidos);
                            Session.Add("periodo", nombre.periodo);
                            Session.Add("cedula", nombre.Cedula);
                            if (resultDirector.Count() > 0)
                            {
                                Session.Add("CodCarrera", nombreDirector.Cod_Carrera);
                                Session.Add("NombreCarrera", nombreDirector.Carrera);
                            }
                            else
                            {
                                if (coordinador != null)
                                {
                                    if (coordinador.Tipo == "Coordinador")
                                    {
                                        Session.Add("tipo", coordinador.Tipo);
                                        Session.Add("anioCoordinador", coordinador.anio);
                                        Session.Add("carreraCoordinador", carreraCoordinador.idCarrera);
                                    }

                                }
                            }
                            Response.Redirect("index.aspx");
                        }
                    }
                    else
                    {
                        Response.AppendCookie(galleta);
                        var usuarioAdmin = _objU.consultarUsuariosAdmin(user,pass);
                        var periodo = new Negocio.catalogos.catalogoPeriodo().obtenerPeriodoxTOP().FirstOrDefault();
                        if (usuarioAdmin.nombres== "Administrador")
                        {
                            Session.Add("tipo", "Administrador");
                            Session.Add("admin", "Administrador");
                            Session.Add("cedula", usuarioAdmin.documento);
                            Session.Add("periodo", periodo.idPeriodo);
                            Session.Add("nombresDocente", usuarioAdmin.nombres);
                            Session.Add("apellido", usuarioAdmin.nombres);
                            Response.Redirect("index.aspx");
                        }
                        else if(usuarioAdmin.nombres == "Vicerrectorado")
                        {
                            Session.Add("tipo", "Vicerrectorado");
                            Session.Add("vicerrectorado", "Vicerrectorado");
                            Session.Add("cedula", usuarioAdmin.documento);
                            Session.Add("periodo", periodo.idPeriodo);
                            Session.Add("nombresDocente", usuarioAdmin.nombres);
                            Session.Add("apellido", usuarioAdmin.nombres);
                            Response.Redirect("index.aspx");
                        }
                        else if (usuarioAdmin.nombres == "Secretaria")
                        {
                            Session.Add("tipo", "Secretaria");
                            Session.Add("secretaria", "Secretaria");
                            Session.Add("cedula", usuarioAdmin.documento);
                            Session.Add("periodo", periodo.idPeriodo);
                            Session.Add("nombresDocente", usuarioAdmin.nombres);
                            Session.Add("apellido", usuarioAdmin.nombres);
                            Response.Redirect("index.aspx");
                        }
                        
                    }
                }
                catch (Exception)
                {
                    System.Web.HttpContext.Current.Response.Write("<SCRIPT LANGUAGE='JavaScript'>alert('" + msm + "')</SCRIPT>");
                }
                #endregion

            }
        }
    }
}